// This code is hosted on http://code.google.com/p/lenthorp/
// Freely available for use in applications, but should NOT be modified
// Email all comments to lenthorpresearch@gmail.com

#ifndef quantlib_gpuinstrument_hpp
#define quantlib_gpuinstrument_hpp


#include <ql/instrument.hpp>
#include <qt/pricingengines/gpumcengine.hpp>

namespace QuantLib {

	class GPUInstrument : public Instrument {
		public:
			bool isExpired() const {
				return false;
			}

			void setPricingEngine(
				const boost::shared_ptr<GPUMCEngine>& e) {
					Instrument::setPricingEngine(e);
			}

			Real NPV() {
				return Instrument::NPV();
			}

			inline void setupArguments(PricingEngine::arguments*) const {
			}
	};

}

#endif